package com.poetize.plus.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.poetize.plus.entity.dto.FriendDTO;
import com.poetize.plus.entity.dto.page.FriendPageDTO;
import com.poetize.plus.entity.po.Friend;
import com.poetize.plus.entity.vo.FriendVO;
import com.poetize.plus.entity.vo.page.FriendPageVO;

import java.util.List;
import java.util.Map;

/**
 * @author zuosy
 * @created 2024/5/14 17:06
 */
public interface FriendService extends IService<Friend> {

    /**
     * 分页数据
     * @param friendPageDTO
     * @return
     */
    Page<FriendPageVO> friendPage(FriendPageDTO friendPageDTO);

    /**
     * 详情
     * @param id
     * @return
     */
    FriendVO queryById(Long id);

    /**
     * 修改
     * @param friendDTO
     * @return
     */
    Boolean updateById(FriendDTO friendDTO);

    /**
     * 获取所有友链
     * @return
     */
    Map<String, List<FriendVO>> getFriends();

    /**
     * 新增
     * @param friendDTO
     * @return
     */
    Boolean add(FriendDTO friendDTO);

    /**
     * 修改审核状态
     * @param id
     * @param status
     * @return
     */
    Boolean changeStatus(Long id, Boolean status);
}
